package com.ruoyi.tb.lmt.domain.vo;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
import java.util.Date;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * 检修工作视图对象 tb_lmtrepair_workdetail
 *
 * @author ruoyi
 * @date 2023-12-14
 */
@Data
@ExcelIgnoreUnannotated
public class TbLmtrepairWorkdetailVo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @ExcelProperty(value = "ID")
    private Long id;

    /**
     * 检修Id
     */
    //@ExcelProperty(value = "检修Id")
    private Long lmtRepairId;

    /**
     * 派发人员
     */
    //@ExcelProperty(value = "派发人员")
    private String sendUser;

    /**
     * 派发时间
     */
    @ExcelProperty(value = "派发时间")
    private Date sendDate;

    /**
     * 检修类别
     */
    @ExcelProperty(value = "检修类别")
    private String workKind;

    /**
     * 检修分类
     */
    @ExcelProperty(value = "检修分类")
    private String workCategory;

    /**
     * 检修分类ID
     */
    //@ExcelProperty(value = "检修分类ID")
    private Long workCategoryId;

    /**
     * 部件名称
     */
    //@ExcelProperty(value = "部件名称")
    private String equipmentName;

    /**
     * 部件id
     */
    //@ExcelProperty(value = "部件id")
    private Long equipmentId;

    /**
     * 材料名称
     */
    //@ExcelProperty(value = "材料名称")
    private String workDirectName;

    /**
     * 材料地址
     */
    @ExcelProperty(value = "作业指导书")
    private String workDirectUrl;

    /**
     * 是否更换发动机
     */
    //@ExcelProperty(value = "是否更换发动机")
    private Long iszdf;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private Long ists;

    /**
     * 是否必检
     */
    //@ExcelProperty(value = "是否必检")
    private Long ismustcheck;

    /**
     * 任务分类
     */
    //@ExcelProperty(value = "任务分类", converter = ExcelDictConvert.class)
    //@ExcelDictFormat(dictType = "tb_jx_type")
    private String workType;

    /**
     * 顺序
     */
    //@ExcelProperty(value = "顺序")
    private Long orderNo;

    /**
     * 检修轮数
     */
    @ExcelProperty(value = "检修轮数")
    private String workTimes;

    /**
     * 检修内容
     */
    @ExcelProperty(value = "检修内容")
    private String workName;

    /**
     * 检修技术要求
     */
    @ExcelProperty(value = "检修技术要求")
    private String workRequire;

    /**
     * 要求开始时间
     */
    @ExcelProperty(value = "要求开始时间")
    private Date startRequireDate;

    /**
     * 检修开始时间
     */
    @ExcelProperty(value = "检修开始时间")
    private Date startTime;

    /**
     * 检修完成时间
     */
    @ExcelProperty(value = "检修完成时间")
    private Date endTime;

    /**
     * 修理方式
     */
    //@ExcelProperty(value = "修理方式")
    private String workMethod;

    /**
     * 完成情况
     */
    @ExcelProperty(value = "完成情况")
    private String workResult;

    /**
     * 撤销原因
     */
    //@ExcelProperty(value = "撤销原因")
    private String undoReason;

    /**
     * 预计工时
     */
    //@ExcelProperty(value = "预计工时")
    private Long workHours;

    /**
     * 预计工作人数
     */
    //@ExcelProperty(value = "预计工作人数")
    private Long workUserCount;

    /**
     * 实际工时
     */
    @ExcelProperty(value = "实际工时")
    private Long actWorkHours;

    /**
     * 实际工作人数
     */
    //@ExcelProperty(value = "实际工作人数")
    private Long actWorkUserCount;

    /**
     * 主修工队
     */
    @ExcelProperty(value = "主修工队")
    private String workGroup;

    /**
     * 辅修工队
     */
    @ExcelProperty(value = "辅修工队")
    private String workGroup2;

    /**
     * 主修人
     */
    @ExcelProperty(value = "主修人")
    private String workUser;

    private String workUserName;

    /**
     * 辅修人
     */
    @ExcelProperty(value = "辅修人")
    private String workUser2;

    private String workUser2Name;

    /**
     * 工队检查人
     */
    @ExcelProperty(value = "工队检查人")
    private String checkUser;

    private String checkUserName;

    /**
     * 工队检查时间
     */
    @ExcelProperty(value = "工队检查时间")
    private Date checkTime;

    /**
     * 工队检查备注
     */
    //@ExcelProperty(value = "工队检查备注")
    private String checkRemark;

    /**
     * 车间检查结果
     */
    //@ExcelProperty(value = "车间检查结果")
    private String checkResult1;

    /**
     * 车间验收人
     */
    //@ExcelProperty(value = "车间验收人")
    private String checkUser1;

    /**
     * 车间验收时间
     */
    //@ExcelProperty(value = "车间验收时间")
    private Date checkTime1;

    /**
     * 锻验结果
     */
    //@ExcelProperty(value = "锻验结果")
    private String checkResult2;

    /**
     * 段验人
     */
    //@ExcelProperty(value = "段验人")
    private String checkUser2;

    /**
     * 段验时间
     */
    //@ExcelProperty(value = "段验时间")
    private Date checkTime2;

    /**
     * 局验结果
     */
    //@ExcelProperty(value = "局验结果")
    private String checkResult3;

    /**
     * 局验人
     */
    //@ExcelProperty(value = "局验人")
    private String checkUser3;

    /**
     * 局验时间
     */
    //@ExcelProperty(value = "局验时间")
    private Date checkTime3;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态")
    private String status;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    /**
     * 检修工作模版id
     */
    //@ExcelProperty(value = "检修工作模版id")
    private Long workTemplateId;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private Long jT28WorkId;

    /**
     * 派发给工作人时间
     */
    //@ExcelProperty(value = "派发给工作人时间")
    private Date sendToUserTime;

    /**
     * 派发给工作人
     */
    //@ExcelProperty(value = "派发给工作人")
    private String sendToUserName;

    /**
     * 必检标识2
     */
    //@ExcelProperty(value = "必检标识2")
    private Long ismustcheck2;

    /**
     * 必检标识3
     */
    //@ExcelProperty(value = "必检标识3")
    private Long ismustcheck3;

    /**
     * 前期工作索引
     */
    //@ExcelProperty(value = "前期工作索引")
    private String preWorkIndex;

    /**
     * 检查主题

检查主题
     */
    //@ExcelProperty(value = "检查主题")
    private String inspectionTopic;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private Long flgZx;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private Long flgFx;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private String checkUserFx;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private Date checkTimeFx;

    /**
     *
     */
    //@ExcelProperty(value = "")
    private String checkRemarkFx;

    //@ExcelProperty(value = "表单内容")
    private String fillData;
    //表单
    //@ExcelProperty(value = "表单")
    private String formConfig;
    private String printConfig;

    //设备台位
    @ExcelProperty(value = "设备台位")
    private String repairStation;

    //@ExcelProperty(value = "主修工队id")
    private Long workGroupId;

    //@ExcelProperty(value = "辅修工队id")
    private Long workGroup2Id;

    @ExcelProperty(value = "车型")
    private String lmtType;

    @ExcelProperty(value = "车号")
    private String lmtNumber;

    //@ExcelProperty(value = "轮次")
    private String repairChar;

    private String isTestBed;
    //@ExcelProperty(value = "遗留问题类型")
    private String legacyIssues;

    private String legacyIssuesData;

    private Integer legacyIssuesStatus;

    private String legacyIssuesSolution;

    private String legacyIssuesRemark;


    @ExcelProperty(value = "计划开始日期")
    private Date repairStartDate;

    @ExcelProperty(value = "计划结束日期")
    private Date repairEndDate;

    //@ExcelProperty(value = "检修单元")
    private String repairUnit;

    //@ExcelProperty(value = "配属车间")
    private String workerTeam;

    //@ExcelProperty(value = "验收类别")
    private String checkKind;

    //@ExcelProperty(value = "创建人")
    private String createBy;

    //@ExcelProperty(value = "创建时间")
    private Date createTime;

    //@ExcelProperty(value = "预检临修图片地址")
    private String taskUrl;

    private String fileName;
    private String ossId;
    private String url;

    //提料物资编号
    private String legacyIssuesMaterial;
    //提料物资数量
    private String legacyIssuesNumber;

    //申请验收的url
    private String acceptanceUrl;

    //提料url
    private String pickupUrl;

    //验收问题id
    private Long acceptanceId;

    //表单状态
    private String jsonStatus;

    //遗留问题提交图片
    private String legacyTaskUrl;

    private List<WheelDiameterDataVo> wheelDiameterDataVoList;

    private Map<String,Object> workHeight;

}
